package framework.module.webservice.server.service;

import framework.module.webservice.server.vo.User;

import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import java.util.List;

/**
 * path注解类似于RequestMapping
 * Consumes注解表示接收（消费）的类型
 * Produces注解表示返回（生产）的类型
 *
 * @author 吴宇亮 on 2019/8/7 0007 下午 4:17
 */
@Path("/userService")
public interface IUserService {

    @GET
    @Path("/user")
    @Produces(MediaType.APPLICATION_JSON)
    List<User> findAllUser();

    @GET
    @Path("/user/{id}")
    @Produces(MediaType.APPLICATION_JSON)
    User getUser(@PathParam("id") Integer id);

    @POST
    @Path("/user")
    @Consumes(MediaType.APPLICATION_JSON)
    void saveUser(User user);

    @OPTIONS
    @Path("/user/{str}")
    @Consumes(MediaType.APPLICATION_JSON)
    String hello(@PathParam("str") String str);

}
